import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import './style/common.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
import { HashRouter } from 'react-router-dom';
import { PersistGate } from 'redux-persist/integration/react';

// store 提供者
import { Provider } from 'react-redux';
// store
import store, { persistReduxStore } from './store';

const root = ReactDOM.createRoot(document.getElementById('root') as HTMLElement);
root.render(
    <React.StrictMode>
        {/* provider 提供数据 */}
        {/* PersistGate 持久化 */}
        <Provider store={store}>
            <PersistGate loading={null} persistor={persistReduxStore}>
                <HashRouter>
                    <App />
                </HashRouter>
            </PersistGate>
        </Provider>
    </React.StrictMode>
);

// If you want to start measuring performance in your app, pass a function
// to log results (for example: reportWebVitals(console.log))
// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
reportWebVitals();
